# !/usr/bin/env python
# -*- coding: utf-8 -*-


import threading

# 在线程共享多个资源的时候，如果两个线程分别占有一部分资源并且同时等待对方的资源，就会造成死锁。

def get_value(index):
    dataList = [1, 3, 5, 7, 9]
    lock.acquire()

    if index >= len(dataList):
        print("下标越界", index)
        return
    print(dataList[index])
    lock.release()


if __name__ == '__main__':
    # 创建锁
    lock = threading.Lock()

    # 创建10个线程
    for i in range(10):
        t = threading.Thread(target=get_value, args=(i,))
        t.start()
